package cartes;

import comportement.ActionClasse;
import java.util.ArrayList;
import plateau.Joueur;

public class Classe extends Carte {
    
    /*
     * Attributs
     */
    private int typeClasse;
    
    /*
     * Constructeur
     */
    public Classe(String nom, String description, int categorie, ActionClasse a, int typeClasse, String img) {
        // Constructeur de Carte
        super(nom, description, categorie, img);
        
        // Attributs génériques
        this.actionClasse = (ArrayList<ActionClasse>) a;
        this.incidentFacheux = null;
        this.malusMonstre = null;
        this.actionCarte = null;
        this.typeClasse = typeClasse;
        
        // Attributs spécifiques
        
    }
    
    /*
     * Méthodes
     */
    @Override
    public void combattre() {
        
    }
    
    @Override
    public void equiper() {
        
    }
    
    @Override
    public void fuir() {
        
    }
    
    @Override
    public void utiliser() {
        
    }

    @Override
    public void utiliser(Joueur j) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void utiliser(Joueur j, Joueur j2) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
    
    
    
    @Override
    public void utiliserPouvoir() {
        
    }
    
    /*
     * Getters & Setters
     */
    public int getTypeClasse() {
        return this.typeClasse;
    }
    
    @Override
    public boolean equipable() {
        return true;
    }
    
    @Override
    public boolean utilisable() {
        return false;
    }
}